/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package Pedidos.Producto.Controlador;

import Pedidos.Producto.BEAN.ProductoBEAN;
import Pedidos.Producto.DAO.ProductoDAO;
import Pedidos.Producto.Vista.EditarProducto;
import Pedidos.Producto.Vista.Producto;
import Pedidos.Producto.Vista.VerProducto;
import javax.swing.JOptionPane;
import sape.Controlador;
import sape.MenuControlador;

/**
 *
 * @author Diego
 */
public class VerProductoControlador extends Controlador{
    VerProducto vista;
    MenuControlador menu_controlador;
    ProductoBEAN elemento=null;
    public VerProductoControlador(VerProducto aThis, MenuControlador menu, int id) {
       this.vista=aThis;
       this.menu_controlador=menu;
        ProductoBEAN prod=ProductoDAO.getProducto(id);
        elemento=prod;
        vista.tbNombre.setText(prod.getNombre().toString());
        vista.tbPrecio.setText(prod.getPrecio().toString());
        vista.tbaDescripcion.setText(prod.getDescripcion().toString());
    }
    
    public void editar() {
        this.menu_controlador.cerrarVista();
        this.vista.setVisible(false);
        EditarProducto new_vista=new EditarProducto(this.menu_controlador,elemento);
        this.menu_controlador.controlador_interno=new_vista.controlador;
        this.menu_controlador.abrirVista(new_vista);
    }
    
    
    
    
     public void eliminar() {
         if (JOptionPane.showConfirmDialog(this.menu_controlador.vista, "¿Desea realmente eliminar el producto?",
                "Eliminar el producto", JOptionPane.YES_NO_OPTION) == JOptionPane.YES_OPTION)
         {
            if(ProductoDAO.eliminarProducto(elemento.getId()).compareTo("OK")==0){
                JOptionPane.showMessageDialog(this.menu_controlador.vista, "Eliminacion exitosa.");
            }else{
                JOptionPane.showMessageDialog(this.menu_controlador.vista, "ERROR en DB.");
                return;
            }
            
            this.menu_controlador.cerrarVista();
            this.vista.setVisible(false);
            Producto new_vista=new Producto(this.menu_controlador);
            this.menu_controlador.controlador_interno=new_vista.controlador;
            this.menu_controlador.abrirVista(new_vista);
         }
     
     }
    
     public void cerrar() {
        this.menu_controlador.cerrarVista();
        this.vista.setVisible(false);
        Producto new_vista=new Producto(this.menu_controlador);
        this.menu_controlador.controlador_interno=new_vista.controlador;
        this.menu_controlador.abrirVista(new_vista);
    }
    
}
